package com.drg.center.entity.result;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

@Data
@ApiModel("住院单病种费用分析列表信息")
public class SingleDiseaseHospitalizationCostAnalysisPageVO implements Serializable {
    @ApiModelProperty("科室名称")
    private String departName;

    @ApiModelProperty("医生名称")
    private String doctorName;

    @ApiModelProperty("患者姓名")
    private String patientName;

    @ApiModelProperty("主诊断列表")
    private List<String> diagnosisList;

    @ApiModelProperty("总费用")
    @Min(value = 0, message = "总费用必须大于0元")
    @NotNull(message = "总费用不能为空")
    private BigDecimal totalCost;

    @ApiModelProperty("入院日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate startDate;

    @ApiModelProperty("出院日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate endDate;

    @ApiModelProperty("住院天数")
    @Min(value = 1, message = "总费用必须大于1天")
    private Integer inpatientDays;
}
